/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package org.cip.esymons.tramite.beans;

import java.util.List;
import javax.faces.model.SelectItem;
import org.cip.esymons.tramite.bc.ProvinciaDelegate;
import org.cip.esymons.general.be.Departamento;
import org.cip.esymons.general.be.Provincia;

/**
 *
 * @author ADMINISTRADOR
 */
public class provinciaController {

    private ProvinciaDelegate delegado;
    private Provincia provincia;
    private Departamento dpto;
    
    public provinciaController() {
        dpto = new Departamento();
        delegado =  new ProvinciaDelegate();
    }

    public ProvinciaDelegate getDelegado() {
        return delegado;
    }

    public void setDelegado(ProvinciaDelegate delegado) {
        this.delegado = delegado;
    }

    public Provincia getProvincia() {
        return provincia;
    }

    public void setProvincia(Provincia provincia) {
        this.provincia = provincia;
    }

    public Departamento getDpto() {
        return dpto;
    }

    public void setDpto(Departamento dpto) {
        if(dpto==null){
            System.out.print("departamento nulo");
        }
        this.dpto = dpto;
    }


    public Provincia buscaPorCodigo(Integer codigo){

        return delegado.find(codigo);
    }

    public List<Provincia> getListaProvincia(){

        return delegado.findAll();
    }

    
    public String nuevo(){

        provincia = new Provincia();
        dpto = new Departamento();
        return "ir_a_nuevo";
    }

    public String editar(){

        delegado.edit(provincia);
        return "ir_a_listar";
    }

    public String grabar(){

        delegado.create(provincia);
        return "ir_a_listar";
    }

    public SelectItem[] getSelectListaItemProvincia(){

      try{
        System.out.println("Ingreso 1");
        SelectItem[] selects = null;
        List<Provincia> listaProvincia = delegado.ListaPorDpto(dpto);
        selects = new SelectItem[listaProvincia.size()];
        int cont = 0;
        for(Provincia prov : listaProvincia){

            SelectItem item = new SelectItem(prov, prov.getProNombre());
            selects[cont] = item;
            cont++;
        }
        return selects;
      }catch(Exception e){
            System.out.println("Ingreso Error");
            SelectItem[] selects = new SelectItem[1];
            SelectItem item = new SelectItem(null, "No existen provincias");
            selects[0] = item;
            return selects;
      }

    }

    public SelectItem[] getSelectListaItemProvincia2(){

      try{
        System.out.println("Ingreso 1");
        SelectItem[] selects = null;
        List<Provincia> listaProvincia2 = delegado.ListaPorDpto(dpto);
        selects = new SelectItem[listaProvincia2.size()];
        int cont = 0;
        for(Provincia prov2 : listaProvincia2){

            SelectItem item = new SelectItem(prov2, prov2.getProNombre());
            selects[cont] = item;
            cont++;
        }
        return selects;
      }catch(Exception e){
            System.out.println("Ingreso Error");
            SelectItem[] selects = new SelectItem[1];
            SelectItem item = new SelectItem(null, "No existen provincias");
            selects[0] = item;
            return selects;
      }

    }
}
